"""

1.什么是scrapy-redis
分布式爬虫
当需求大于功能  比如 老板  一周 爬取10亿条数据  scrapy 一小时 100万条数据  24000000*7


有什么特点
可以多个scrapy框架   不同的节点进行爬取
搬家
10件家具  1次只能搬1件  10次
        5个人       2次
分布式爬取   多个节点一起干活
整体时间缩短了  总量不变  速度变快

思考问题1？
请人帮忙  一个人搬了衣柜  另一个人就不能搬衣柜    /url 发送请求     》》另一个scrapy节点  不能再次发送请求
圈起来的都是名词 真实存在的
scrapy框架会有自己的(去重组件)
每个scrapy框架会去(任务队列)里面拿请求对象（url）
再将请求对象 放进任务队列之前 会经过去重集合(set)

if url in set:
    不将请求对象放到任务队列
else:
    将请求对象放到任务队列

思考问题2？
爬取数据 爬到一半 停电 是否会从头爬取？
不会
断点续爬  会把每个请求的对象 放在任务队列(reids数据库储存)
中断以后 继续通过命令爬取 会到redis数据库拿请求对象 继续发送请求 不影响

思考问题3？
scrapyredis爬取后的数据放在哪里？
通过 重建管道  在保存到数据库之前 保存到本地
保存数据的重点 reids数据库 不会将  return item  所以在保存到数据库之前 保存到本地
需要在setting 指定管道 设置权重  权重越小 优先执行

关键点
第一次请求  如果有多个scrapy节点的情况下
都是需要设置 redis_key 起始url
三个scrapy节点会去抢设置的redis_key












"""


















